In recent years, the speed of networking hardware has increased by two or three orders of magnitude, enabling packet networks such as Gigabit Ethernet™ and InfiniBand™ to operate at speeds in excess of about 1 Gbps. Network interface adapters for these high-speed networks typically provide dedicated hardware for physical layer and medium access control (MAC) layer processing (Layers 1 and 2 in the Open Systems Interconnect model). Some newer network interface devices are also capable of offloading upper-layer protocols from the host CPU, including network layer (Layer 3) protocols, such as the Internet Protocol (IP), and transport layer (Layer 4) protocols, such as the Transport Control Protocol (TCP) and User Datagram Protocol (UDP), as well as protocols in Layers 5 and above.
Chips having LAN on motherboard (LOM) and network interface card capabilities are already on the market. One such chip comprises an integrated Ethernet transceiver (up to 1000BASE-T) and a PCI or PCI-X bus interface to the host computer and offers the following exemplary upper-layer facilities: TCP offload engine (TOE), remote direct memory access (RDMA), and Internet small computer system interface (iSCSI). A TOE offloads much of the computationally-intensive TCP/IP tasks from a host processor onto the NIC, thereby freeing up host processor resources. TCP is described in Request for Comments (RFC) 793, published by the Internet Engineering Task Force (IETF). The Microsoft® Windows® operating system provides an Application Programming Interface (API) known as “TCP Chimney,” which is defined in the Microsoft Network Design Interface Specification (NDIS), versions 5.2 and 6.0.
A RDMA controller (RNIC) works with applications on the host to move data directly into and out of application memory without CPU intervention. RDMA runs over TCP/IP in accordance with the iWARP protocol stack. RDMA uses remote direct data placement (rddp) capabilities with IP transport protocols, in particular with SCTP, to place data directly from the NIC into application buffers, without intensive host processor intervention. The RDMA protocol utilizes high speed buffer to buffer transfer to avoid the penalty associated with multiple data copying. The Internet engineering task force (IETF) is the governing body that provides up-to-date information on the RDMA protocol. Features of RDMA are described in the following IETF drafts: draft-ieft-rddp-applicability-02, draft-ietf-rddp-arch-06, draft-ieff-rddp-ddp-03, draft-ieff-rddp-mpa-01, draft-ietf-rddp-problem-statement-05, draft-ietf-rddp-rdma-concerns-01, draft-ietf-rddp-rdmap-02, draft-ietf-rddp-security-06, and draft-hilland-rddp-verbs-00.
An iSCSI controller emulates SCSI block storage protocols over an IP network. Implementations of the iSCSI protocol may run over either TCP/IP or over RDMA, the latter of which may be referred to as iSCSI extensions over RDMA (iSER). The iSCSI protocol is described in IETF RFC 3720. The RDMA consortium is the governing body that provides up-to-date information on the iSER protocol. Information for iSER is described in IETF draft-ko-iwarp-iser-v1. The above-mentioned IETF documents are incorporated herein by reference. They are available at www.ietf.org.
These and other advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.